Conveyor system

ABSTRACT

A conveying apparatus is provided with a control device for performing infinite rotation control of rotation of a strut or wrist shaft of a robot conveying an article and a drive shaft of a conveyor. The control device comprises a rotary shaft ( 6 ) rotationally driven, a drive ( 7 ) for rotating the rotary shaft, an encoder for detecting a rotation of the rotary shaft, a servo control device ( 22 ) for controlling the drive ( 7 ) based on a program command, a main control device ( 10 ) for controlling rotation, and an infinite rotation control device ( 12 ) for controlling infinite rotation. The program command is prepared and position control is carried out based on a reference encoder value. In the case of issuance of a command from a command circuit, by adding or subtracting an encoder value equivalent to a position-moving amount, the reference encoder value is changed and stored. Thus, it is possible to obtain a conveying apparatus capable of performing infinite rotation control under the state of maintaining any operation range at any deceleration ratio.

This application is a 371 of PCT/JP01/00416 filed Jan. 23, 2001.

TECHNICAL FIELD

The present invention relates to improvements in a conveying apparatussuch as a robot, a conveyor or the like.

BACKGROUND ART

Hitherto, to turn a strut or a wrist shaft at a distal end portion of arobot, to drive a conveyor and the like, an infinite rotation control,in which each of rotary shafts of the robot and the conveyor performs aturn of not less than 360 degrees, has been employed.

This type of conventional conveying apparatus is disclosed, for example,in Japanese Patent Laid-Open No. 79674/1994. In this conventionalapparatus, to achieve the infinite rotation control capable of turning awrist shaft of a robot in the order of 360 degrees and a predeterminedangle positioning control by using the same hardware, the followingcontrol operation is carried out. That is, at the time of infiniterotation control, the infinite rotation is conducted by resetting asignal from an encoder mounted on a drive unit such as a motor to turnthe wrist shaft each time the wrist shaft make the rotation, andcounting up number of rotation every time. On the other hand, at thetime of the angle positioning control, the angle positioning isconducted by causing the drive to rotate until a signal from the encodercomes to be a predetermined value, establishing a reference encodervalue reset each time of turning as origin. Further, in the disclosedconveying apparatus, by setting a rotation ratio R between the wristshaft and the drive to be 1:2^(n) (n is an integer), accurate return ofthe wrist shaft to the origin can be performed without any mechanicalgap even after the infinite rotation.

Moreover, The Japanese Patent Laid-Open No. 44076/1998 discloses anotherconveying apparatus, in which the rotation ratio R between the wristshaft and the drive can be set arbitrarily to be, for example, N/M. Whenthe drive makes N rotations, a rotation counter counts up M, therebyachieving the infinite rotation. Further a rotational angle of the wristshaft is calculated based on a rotation amount of the motor drive shaftuntil there is an increase in M counts.

Furthermore, the Japanese Patent Laid-Open No. 217171/1998 discloses atechnology in which a signal from an encoder mounted on a drive forturning a wrist shaft is reset each time it make the rotation, andnumber of rotation is counted up every time, thereby achieving theinfinite rotation. Further, by setting the rotation ratio R between thewrist shaft and the drive to be 1:2^(n) (n is an integer), the drive isrotated in a direction close to an origin, whereby accurate return ofthe wrist shaft to the origin can be performed in a short time.Furthermore, after setting a current value to a working origin, that is,to a value of rotational angle from the viewpoint of the referenceencoder value, the wrist shaft is returned to the origin, therebysolving a disadvantage of the mechanical gap.

In the conventional conveying apparatus described above, utilizing anaction that the rotary shaft makes M rotations by deceleration meanswhen the drive makes N rotations, the encoder value is changed when thedrive has made N rotations. That is, the encoder value can be changedonly in such a limited case that the rotation number M of the rotaryshaft and the rotation number N of the drive are respectively integersor values conforming to a resolution of the encoder. However, a problemexists in that setting below the resolution is impossible, and thatconduction of conveying work repeatedly brings about an accumulatederror, making it impossible to carry out an exact conveying work.

Moreover, in the case of linearly moving any article to be conveyed inconformity with a distance between one step and another such as carriedout by a conveyor belt in manufacturing line, the drive for driving theconveyor requires plural times rotation control and positioning controlat a predetermined angle. Further in the case that the decelerationmeans is a belt, or that means for conveying the article to be conveyedis a conveyor belt, it is impossible to indicate the rotation ratio ofthe deceleration means in the form of an integer. Therefore, a problemexists in that conduction of any conveying work repeatedly brings aboutan accumulated error, making it impossible to carry out an accurateconveying work.

Furthermore, in the case of repeating plural times linear movement orrotational movement in one direction at all times, when executing aprogram based on a current value, the current value increasessequentially in order. Therefore, a value indicative of a positioncommand in the program comes to be larger gradually, and thus a problemexits in that the program becomes further complicated.

DISCLOSURE OF INVENTION

The present invention is made to solve the above-discussed problems, andhas an object of obtaining a conveying apparatus capable of usingdeceleration means of arbitrary rotation ratio, and changing a referenceencoder value for each arbitrary amount of rotation, thereby omittingany extra operation for position control and making a program easy.

Another object of the invention is to provide a conveying apparatuscapable of being adapted to an infinite linear-moving shaft such as usedin a conveyor, changing the reference encoder value for each arbitrarymoving amount, and also changing the indication of a current value.

There is provided a conveying apparatus according to the invention inwhich an output value of an encoder that varies in conformity withdriving of a drive is detected at all times, a reference encoder valueat the origin of a program is stored, and a movement command is producedusing the reference encoder value as the origin to execute the program.In the case that any movement command for moving the reference encodervalue is issued from the program, an encoder value that is equivalent toa specified amount of rotation or moving distance is added to orsubtracted from a previous reference encoder value. Thus a positioncontrol is carried out in conformity with a subsequent operationprogram.

In the mentioned conveying apparatus, a difference between an idealreference encoder value obtained by adding a value that is equivalent toa moving distance to or subtracting from the reference encoder value,and the reference encoder value indicated in integer and actually set,is stored as an error. In the case of setting the next reference encodervalue, the mentioned difference is compensated and outputted, so thatthe error is controlled to be less than a unit value detected by theencoder at all times.

In the conveying apparatus arranged above-described according to thisinvention, the infinite rotation control capable of arbitrarily settinga rotation number ratio R between a rotation number N of the drive and arotation number M of the rotary shaft, and positioning every time at apredetermined angle becomes possible. As a result, an advantage isperformed such that any extra operation can be omitted, and the programbecomes simple.

In addition, even when applying to a linear-moving shaft such as used ina conveyor, an operation ratio R between the rotation number N of thedrive and a moving distance Mmm of the linear-moving shaft can be setarbitrarily. As a result, an advantage is performed such that theprogram becomes simple, and furthermore it becomes easy to get hold of aposition just by resetting a current value to zero after having reacheda predetermined distance.

Furthermore, in the conveying apparatus according to the invention, whencalculating the reference encoder value for achieving the mentionedcontinuous position control, a difference between an ideal referenceencoder value obtained by computation and an actually set referenceencoder value is stored. When setting the next reference encoder value,the difference is compensated and outputted. As a result, an advantageis performed such that position error can be less than a unit valuedetected by the encoder at all times.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram of a robot apparatus including an infiniterotary shaft according to Embodiment 1 of the present invention.

FIG. 2 is a schematic view showing a shaft relation of a robot bodyaccording to Embodiment 1.

FIG. 3 is a schematic view of deceleration means of a sixth shaftaccording to the first embodiment.

FIG. 4 is a flowchart of a reference encoder position movement processin infinite rotation processing.

FIG. 5 is a flowchart showing plus side movement process of a referenceencoder value in the infinite rotation processing.

FIG. 6 is a flowchart showing minus side movement processing of areference encoder value in the infinite rotation processing.

FIG. 7 is an explanatory chart for changing processing the referenceencoder value.

FIG. 8 is an explanatory chart for moving and processing the referenceencoder value based on a specific example.

FIG. 9 is a schematic view of a conveyor showing Embodiment 2.

FIG. 10 is a flowchart of moving and processing the reference encodervalue according to Embodiment 2.

FIG. 11 is an explanatory chart for moving and processing the referenceencoder value according to the Embodiment 2.

FIG. 12 is a schematic view showing a hand part of a robot according toEmbodiment 3.

FIG. 13 is an explanatory chart for moving and processing the referenceencoder value according to Embodiment 3.

FIG. 14 is a schematic view of a robot and work platform showingEmbodiment 4.

BEST MODE FOR CARRYING OUT THE INVENTION

Embodiment 1

FIG. 1 is a block diagram of a robot apparatus including an infiniterotary shaft according to Embodiment 1 of the present invention, andFIG. 2 is a schematic view showing a shaft relation of a robot body.FIG. 3 is a schematic view of deceleration means of a sixth shaft.

In the drawings, a conveying apparatus comprises a robot body 2 and acontrol section 1. The robot body 2 includes first to fifth shafts 3that are servo-controlled by means of a first servo control device 20and drive and turn an arm. Further, the robot body 2 includes a sixthshaft 6 that is servo-controlled by means of a second servo controldevice 22 and infinitely rotates a wrist shaft mounted on a distal endportion of the fifth shaft.

Furthermore, the first to fifth shafts 3 is provided with a firstencoder 5 for detecting a rotation amount thereof, and the sixth shaft 6is provided with a second encoder 8 for detecting a rotation amountthereof. The first to fifth shafts 3 are rotationally driven by means ofa first drive 4 such as an electric motor, and the first encoder 5detects a rotational angle of the first drive 4. The sixth shaft 6 isdriven by a second drive 7, and the second encoder 8 detects arotational angle of the second drive 7. The first encoder 5 and thefirst drive 4 are respectively provided corresponding to each of thefirst to fifth shafts 3 (five shafts).

The control section 1 side comprises a main control device 10, aninfinite rotation control device 12, an interface 38, the first servocontrol device 20 and the second servo control device 22. The maincontrol device 10 comprises a CPU 30, a ROM 32 for storing a controlprogram, a RAM 31 for storing a working area of the program andparameters such as a resolution value of the encoder, a rotation ratioof deceleration means and a reference encoder value. The infiniterotation control device 12 comprises a CPU 33, a ROM 35 for storing aninfinite rotation control program, and a RAM 34 for storing a workingarea and a processing result of the program. In this embodiment, theCPU, ROM and RAM are disposed independently in each of the main controldevice 10 and the infinite rotation control device 12. However it isalso preferable that a set of the CPU, ROM and RAM is shared by the maincontrol device 10 and the infinite rotation control device 12.

Deceleration means 53 is disposed between the second drive 7 and thesixth shaft 6. This deceleration means 53 is composed of a first gear 51mounted on an output shaft 50 of the drive 7 and a second gear 52mounted on the sixth shaft 6. The second encoder 8 is mounted on theoutput shaft 50, and rotates integrally with the output shaft 50. Numberof teeth of the first gear 51 is set to m (for example, 30 teeth), andnumber of teeth of the second gear 52 is set to n (for example, 100teeth). In this arrangement, a ratio R between the rotation number ofthe second drive 7 and that of the sixth shaft 6 is n/m (in thisexample, R=100/30=10/3=N/M; N=10, M=3). Accordingly when the seconddrive 7 makes N (for example, 10) rotations, the sixth shaft 6 makes M(for example, 3) rotations.

In addition, in this embodiment, the deceleration means 53 comprises twogears, it is, however, preferable that the deceleration means 53comprises not less than three gears. Further, it is also preferable thatthe deceleration means comprises other means than gears, such as a beltor timing belt. Furthermore, the rotation number ratio R can bearbitrarily selected, and the selection thereof is not restricted at thedesigning stage.

In the specification of the second encoder 8, supposing that the numberof bits is 32, an output from the second encoder 8 takes a value between0 to 2³²−1. That is, in the case that the output shaft 50 continues torotate, the output from the second encoder 8 will repeat a value in therange of 0 to 2³²−1. In the position control of the sixth shaft 6, acommand position is determined establishing a reference encoder value asa command origin. The reference encoder value is set by, e.g., anoperator, and is equivalent to an output value from the second encoder 8at the working origin position. In the case that any movement command isgiven in conformity with the program, the reference encoder value isarranged so as to be controlled until an output value from the encodercomes to a position where(encoder output value)=(reference encoder value)+(encoder value of aposition movement command amount).When carrying out the infinite rotation control, the reference encodervalue controlled at the infinite rotation control device 12 is moved insequence by each 360 degrees, thereby achieving the position control atthe time of the infinite rotation.

Now, operation of the first embodiment will be hereinafter described.Based on the program, the main control device 10 drives and controls thefirst to fifth shafts 3 by means of the first servo control device 20.More specifically, the first servo control device 20 causes the firstdrive 4 to operate based on a signal from the main control device 10,thereby the first to fifth shafts 3 being rotated, and a rotation amountthereof is fed back to the first servo control device 20 by means of thefirst encoder 5. A signal for controlling rotation of the sixth shaft 6is inputted to the infinite rotation control device 12 via the maincontrol device 10. In the case that any infinite rotation control is notcarried out, the infinite rotation control device 12 uses the signalfrom the main control device 10 as it is without processing and causesthe second servo control device 22 to operate. On the contrary, in thecase of carrying out the infinite rotation control, the infiniterotation control device 12 changes the signal from the main controldevice 10 in conformity with a specified position moving amount therebyoperating the second servo control device 22. The second servo controldevice 22 causes the sixth shaft 6 to rotate by operating the seconddrive 7, and the rotation amount of the sixth shaft 6 is fed back to thesecond servo control device 22 by means of the second encoder 8. In thismanner, the control section can perform two operations, i.e., normalrotation in response to the control signal from the main control device10 and infinite rotation control in response to the control signal fromthe infinite rotation control device 12, to operate. In addition, theCPU 30 in the main control means 10 and the CPU 33 in the infiniterotation control device 12 is arranged so as to exchange at all timesinformation such as infinite rotation implementation state other thanthe control signal. That is, a value of the second encoder 8 fordetecting the rotation of the sixth shaft 6 is transmitted from thesecond servo control device 22 to the infinite rotation control device12, further to the main control device 10, and is used for changing anindication of a current value and updating the reference encoder valueserving as a reference for the movement control.

Now, the position control at the time of the infinite rotation by meansof the infinite rotation control device 12 will be described withreference to flowcharts each showing a control system in FIGS. 4, 5 and6, and to an explanatory diagram showing a relation between an encodervalue and a rotational angle in FIG. 7.

A power supply is turned on in a step 50 in FIG. 4, and the robot startsoperation at a position of the sixth shaft 6 indicated by the point D inFIG. 7. Then proceeding to a step S1, a reference encoder value (EORG)at a point A that was set before the power supply is turned off lasttime is read out from the RAM 34 backed up by the battery. Furtherestablishing the reference encoder value (EORG) as a reference, aparameter of, e.g., each joint stored in the RAM 34 of the controlsection 1 is initialized. Subsequently in a step S2, using a positionmoving amount S up to a point B specified by the input means, areference encoder value moving amount at the time of moving thereference encoder value is calculated. In the calculation of thereference encoder value moving amount, the position moving amount S atthe sixth shaft 6, a rotation number ratio R of the deceleration means53 and a resolution ENC of the second encoder 8 (output amount from thesecond encoder 8 when the encoder or the drive 7 makes one rotation) areused. FIG. 8 shows a relation between a specific encoder value and arotational angle, for example, in the case that the position control forthe sixth shaft 6 is carried out for each 360. In this case, theposition moving amount S=360, and the rotation number ratio R=N/M=10/3of said reducing speed means 53, and the resolution ENC=8192 of the 2ndencoder 8 are memorized as parameters by the RAM34. Further a movingamount of the reference encoder value is computed as follows:S×R×ENC=81920/3As a result, it becomes a form of a fraction.The moving amount of this reference encoder value is processed in theform of a mixed fraction, that is,a+c/bwhere: a is an integer part of a moving amount of the reference encodervalue, and is a value that is actually added to or subtracted from thereference encoder value. c/b is a fraction part and represents an error,and is used in the case of conducting a compensation in the next time.In the case that both b and c are positive integers, it is convenientbecause the error can be surely compensated. However, it is preferablethat, accurately controlling the c/b as a numerical value of decimalplaces, when accumulation of the errors comes to be not less than avalue detected by the encoder, the accumulated value is added to orsubtracted from the reference encoder value, thereby compensating sothat the c/b may be less than the value detected by the encoder at alltimes. For better understanding, following description is given on theassumption that each of the c and b is an integer. If the moving amountof the reference encoder value is an integer as a result of calculatingbased on the position moving amount S, the rotation number ratio R andthe resolution of the encoder, b and c will be set to b=1, and c=0.Under the mentioned conditions, a, b and c becomes following numericalvalues:a=27306, b=3, C=2These values are stored in the RAM 34 of the infinite rotation controldevice 12.

Subsequently in a step S3, establishing that a variable X that is adifference between an ideal reference encoder value and an actualencoder value is zero, initialization is executed. The X is a variablethat accumulates the values of the c/b that is the above-described errorevery time the reference encoder value is moved, and is processed so asto be a numerical value less than 1 at all times. The foregoing stepsfrom S0 to S3 are the initialization processing at the time of startingthe robot.

Then, in a step S4, whether there is any movement command of thereference encoder value is determined. In the case of the presence ofsuch a movement command, the program proceeds to a step S5. It ispreferable that the movement of the reference encoder value isautomatically executed in the case that the sixth shaft 6 performs theinfinite rotation beyond the operation range specified by the controlapparatus, or is executed in response to a command from the program.General expression of such a command in the case of commanding from theprogram will be as follows:

-   -   JRC MULTI, AXIS        where: JRC indicates the movement command of the reference        encoder value, MULTI indicates a magnification value, and AXIS        indicates an axis of moving object.

A specific example of the movement command of the sixth shaft in FIG. 8will be as follows:

-   -   JRC+1, 6        In response to the above-described command, establishing that        the sixth shaft is the object axis, the reference encoder value        is updated to a value obtained by adding the magnification MULTI        (=+1) times the position moving amount S stored as a parameter        value, to an original encoder value. In the above-described        example, as the position moving amount S=360, a reference        encoder value at a point B will be changed and set to be as        follows.        (reference encoder value at point B)=(reference encoder value        ENC at point A)+27306        When the same command as the above-described command is given        again, the reference encoder value will move to a point C.

In addition, though an example of storing the position moving amount Sin the control section 1 as a parameter value 360 is shown above, it ispreferable that the position moving amount S=360 is directly specifiedfrom the command as follows:

-   -   JRC+360, 6        It is also possible to prepare and implement a command,    -   JRC 0        so that an encoder value at a current position may be changed to        the reference encoder value.

In the step S4, in the case that there is no movement command for thereference encoder value, the program is required to standby until themovement command for the next reference encoder value is issued, andthen a normal program is conducted.

In the step S4, when it is determined that there is a movement commandfor the reference encoder value, proceeding to a step S5, a content ofprocessing is determined in conformity with a moving direction of thereference encoder value. In the case that the moving direction of thereference encoder value is on the plus (+) side, proceeding to a stepS6, a reference encoder value plus (+) side movement processing isimplemented as shown in FIG. 5. On the contrary, in the case that themoving direction of the reference encoder value is on the minus (−)side, proceeding to a step S7, a reference encoder value minus (−) sidemovement processing as shown in FIG. 6 is implemented. When implementingstep S6 or S7, returning to step 4, the program is required to stand byuntil any movement command of the reference encoder value is issued.

Referring now to FIG. 5, the reference encoder value plus (+) sidemovement processing of the step S6 will be described. First, in stepS11, an integer part a of a moving amount of the reference encoder valuethat is calculated from, e.g., the position moving amount S, is added toa reference encoder value EORG. Then in a step S12, whether or not thereis any fraction part of the moving amount of the reference encoder valueis confirmed. In the case where c=0, that is a fraction part of themoving amount of the reference encoder value is zero, the referenceencoder value plus (+) side moving amount processing ends. In the casethat c is not zero, that is, a fraction part of the reference encodermoving amount is not zero, the program proceeds to step S13.

In step S13, the c is added to a difference value X. Next in step S14,the X and b are compared to confirm which is larger. In the case of X<b,a difference between the ideal reference encoder value and the actualreference encoder value is less than 1 in encoder detection unit, andtherefore the reference encoder value plus (+) side movement processingends. In the case of X≧b, a difference between the ideal referenceencoder value and the actual reference encoder value becomes not lessthan 1 in encoder detection unit, and therefore the program proceeds tostep S15.

In the step S15, to compensate the reference encoder value EORG, 1 isadded to the EORG. Subsequently in a step S16, the b is subtracted fromthe difference value X thereby bringing a state of 0≦X<b, that is, astate in which the difference between the ideal reference encoder valueand the actual reference encoder value is less than 1 in encoderdetection unit. Then the reference encoder value plus (+) side movementprocessing comes to end.

Now with reference to FIG. 6, the reference encoder value minus (−) sidemovement processing in the step S7 will be described. First in a stepS21, an integer part a of the moving amount of the reference encodervalue is subtracted from a reference encoder value EORG. Then in a stepS22, whether or not there is any fraction part in the moving amount ofthe reference encoder value is confirmed. In the case of c=0, that is,the fraction part of the reference encoder moving amount is zero, thereference encoder value minus (−) side moving amount processing comes toend. In the case that the c is not zero, that is, the fraction part ofthe reference encoder moving amount is not zero, the program proceeds toa step S23.

In the step S23, the c is subtracted from the difference value X. Thenin step 24, the X and −b are compared to confirm which is larger. In thecase of X>−b, a difference between the ideal reference encoder value andthe actual encoder value is less than 1 in encoder detection unit, andthen the reference encoder value minus (−) side movement processingcomes to end. In the case of X≦−b, a difference between the idealreference encoder value and the actual reference encoder value is lessthan 1 in encoder detection unit, and therefore the program proceeds toa step S25.

In the step S25, to compensate the reference encoder value EORG, 1 issubtracted from the EORG. Subsequently in step S26, the b is added tothe difference value X thereby bringing a state of 0≦−X<b, that is, astate in which a difference between the ideal reference encoder valueand the actual reference encoder value is less than 1 in encoderdetection unit. Then the reference encoder value minus (−) side movementprocessing comes to end.

Embodiment 2

A second preferred embodiment in the case of applying the invention to aconveyor is hereinafter described with reference to a schematic view ofFIG. 9, a flowchart of FIG. 10 and an explanatory chart regarding arelation between an encoder value and a moving distance of FIG. 11. Asshown in FIG. 9, when a drive 60 makes N rotations (e.g., 5 rotations),a conveyor 67 travels by Mmm (e.g., 18 mm), and a relation of thisoperation is indicated by an operation ratio R (=N/M, e.g.,=5/18). Adifference from the arrangement in flowcharts of FIGS. 4, 5 and 6regarding the movement processing of the reference encoder value in theinfinite rotation control of the robot wrist shaft exists in using amoving distance in place of an angle in the calculation of a movingamount of the reference encoder value shown in a step S32 of FIG. 10. Tocalculate a moving amount of the reference encoder value, a positionmoving amount S in the conveyor 67, an operation ratio R of decelerationmeans 65 and a resolution ENC of an encoder 61 are used. For example, asshown in FIG. 11, in the case that conveying work is conducted byrepeating a position control of the conveyor 67 to move in one directionin the range of 0 to 600 mm every time, the position moving amount S=600mm is specified. Further, setting an initial reference encoder valueEORG to be an encoder output value at point A, the position control forthe conveyor 67 is carried out based on the program. When setting thereference encoder value EORG to an encoder output value at point B aftercompleting a series of works, it becomes possible to conduct theposition control of the conveyor 67 by establishing a position of thepoint B as an origin, i.e., a position of 0 mm.

Supposing that rotation number N of the above-described drive 60 equal 5rotations and the moving amount M of the above-described conveyor 67equal 18 mm, the operation ratio R of the deceleration means 65 is 5/18.Further supposing that the above-described resolution of the encoder 61is 8192, a moving amount of the reference encoder value will be in theform of the following fraction:S×R×ENC=4096000/3When this moving amount of the reference encoder is represented in aform of a mixed fraction of a +c/b, specific numerical values of the a,b and c will be as follows:a=1365333, b=3, c=1

As to the processing other than in the step 32, quite the sameprocessing as in the foregoing Embodiment 1 is carried out, thus theinfinite movement processing about a linearly moving shaft can beachieved.

Embodiment 3

Embodiment 3 for applying the infinite rotation control apparatusaccording to this invention to a pick place work is hereinafterdescribed with reference to FIGS. 12 and 13. There is provided a holdingdevice 40 fixed to the sixth shaft 6, and this holding device 40 carryout the work holding an object 41 to be conveyed. The holding device 40holds the object 41 to be conveyed in the form of holding it from bothsides thereof. Further even if the holding device 40 rotates 180degrees, quite the same work can be performed. That is, in the statethat the sixth shaft 6 is at an angle of 0° as well as in the state thatthe sixth shaft 6 is at an angle of 180°, it is possible to performquite the same holding work.

In such a work, the holding device 40 holds the object 41 to be conveyedin the state of the sixth shaft 6 being at an angle of 0 and performs aseries of works, and thereafter the holding device 40 lets the object 41off in the state of the sixth shaft 6 being at an angle of 150 thuscompleting one work. In the next work to be continuously performed forconveying the next article to be conveyed, it has been hithertonecessary to start the next work after moving the sixth shaft 6 from thestate of 150° to the state of 0. That is, it is required to start thenext work after waiting for the returning movement of the sixth shaft 6by 150 degrees.

To apply the invention to such kind of work, the position moving amountis set to 180 degrees, for continuously conducting the conveyance workof the next article to be conveyed after completing the previous work,the following command is executed from the program.

-   -   JWC 180, 6        This command changes the reference encoder value to a value        equivalent to the position of 180 degrees in the state that the        sixth shaft 6 is at an angle of 150 degrees. As a result, point        B will be changed to a new reference encoder value. After the        change, the position of the sixth shaft comes to be −30 viewed        from the origin. Then, by giving a movement command of 0 from        the program, the sixth shaft 6 arrives at the origin after the        rotation of +30, whereby it becomes possible to start the work        for the next article to be conveyed. Thus being different from        the prior art, it is not required to move by 150 degrees, and        consequently, it is possible to shorten a time for the work        repeatedly carried out.        Embodiment 4

An example of applying the infinite rotation control apparatus accordingto the invention to a work, in which the same work is carried out at aplurality of work platforms, is hereinafter described with reference toFIG. 14. This drawing is a schematic plan view showing a state ofdisposing a robot 2 and six work platforms (first work platform 71,second work platform 72, third work platform 73, fourth work platform74, fifth work platform 75 and sixth work platform 76). The six workplatforms are disposed at equal intervals circumferentially (in the caseof the drawing, 60 degrees) about a first shaft 70 serving as a strut ofthe robot 2. The work carried out at each work platform is of the samecontent as that in the first work platform 71. An article to be workedon each work platform is located at a position of turning it on thefirst work platform 71 by each 60 about the first shaft 70 of the robot2. A series of works are carried out such that after completing the workat the first work platform 71, then the same work is carried out insequential order at the second work platform 72, the third work platform73 and so on. The works are carried out up to completing the work at thesixth work platform 76, and thereafter the works are repeatedly carriedout from the first work platform 71 again.

For carrying out these works, conventionally, it has been necessaryeither to conduct a position instruction for the robot at each of thewhole six work platforms, or to prepare and operate a program replacingposition data of the first work platform 71 with other position data forturning by 60 about the first shaft 70.

On the other hand, in the infinite rotation control according to thisinvention applied to the first shaft 70 serving as being the strut ofthe robot 2 at each time of completing the work at each work platform,the following command is executed from the program:

-   -   JRC 60, 1        This command is conducted establishing that the position moving        amount of the reference encoder value of the first shaft 70 is        60. Accordingly it becomes possible to repeatedly carry out the        same work as in the first work platform 71 at each of the        remaining five work platforms using the position data of the        work at the first work platform 71. That is, by applying the        invention, any position instruction or position data preparation        work at each work platform is not necessary.        Industrial Applicability

As described above, a control system for a conveying apparatus accordingto the present invention is suitable for the use at a conveying work inwhich execution of a program is repeatedly conducted.

1. A conveying apparatus for conveying articles, comprising conveyingmeans and control means for controlling operation thereof, saidconveying means including: a control shaft; a drive for driving saidcontrol shaft; deceleration means provided between said control shaftand said drive; and a position detector for detecting an operationamount of said control shaft and mounted on either of said rotary shaftor said drive, said control means including: a servo control device fordriving and controlling said drive based on a movement command from aprogram; reference encoder value storage means for storing as areference encoder value an output value from said position detector atan origin of the program; parameter storage means for storing aresolution of said position detector and a rotation ratio of thedeceleration means; and command means for changing said referenceencoder value of said reference encoder value storage means, whereinsaid control means further includes computing means in which, in thecase that a command is issued from said command means, an encoder valueequivalent to a position moving amount commanded from said command meansis added to or subtracted from said reference encoder value, and saidreference encoder value storage means stores a value obtained by suchsubtraction or addition as a new reference encoder value.
 2. Theconveying apparatus according to claim 1, wherein in the case ofissuance of a command from the command 10 means, a current value ischanged in conformity with the new reference encoder value.
 3. Theconveying apparatus according to claim 1, wherein said position movingamount issued from said command means is either a distance or an angle.4. The conveying apparatus according to claim 1, further comprising:difference storage means for storing a difference between the referenceencoder value calculated by said computing means and an actually setreference encoder value; and compensation means for compensating andoutputting said difference in the case of changing the next referenceencoder value.
 5. A conveying apparatus for conveying articles,comprising conveying means and control means for controlling operationthereof, said conveying means including: a control shaft; a drive fordriving said control shaft; deceleration means provided between saidcontrol shaft and said drive; and a position detector for detecting anoperation amount of said control shaft and mounted on either of saidrotary shaft or said drive, said control means including: a servocontrol device for driving and controlling said drive based on amovement command from a program; reference encoder value storage meansfor storing as a reference encoder value an output value from saidposition detector at an origin of the program; parameter storage meansfor storing a resolution of said position detector, a rotation ratio ofthe deceleration means, and a position moving amount in distance orangle; and detection means for detecting an output value from saidposition detector, wherein said control means further includes operationmeans in which, in the case that an output value detected from saiddetection means is a value obtained by addition or subtraction betweenan encoder value equivalent to said position moving amount and saidreference encoder value, said reference encoder value storage meansstores said value obtained by addition or subtraction as a new referenceencoder value.
 6. The conveying apparatus according to claim 5, whereina moving amount of the reference encoder value is directly specified asan output value from the encoder.
 7. The conveying apparatus accordingto claim 5, wherein in the case of issuance of a command from commandmeans, a current value is changed in conformity with a new referenceencoder value.
 8. The conveying apparatus according to claim 5 furthercomprising: difference storage means for storing a difference betweenthe reference encoder value calculated by the computing means and anactually set reference encoder value; and compensation means forcompensating and outputting said difference in the case of changing thenext reference encoder value.